package 多线程初阶.示例测试;

/**
 * yield()  让出CPU,在C++等没有提供yield方法的时候,可以使用sleep(0)
 * 我们知道,sleep的作用是进入阻塞队列,但如果sleep(0)的话,就相当于让线程重新排队了
 * yield 不改变线程的状态, 只会让线程重新去排队
 */
public class TestDemo12 {
    public static void main(String[] args) {
        Thread threadA = new Thread(()->{
           while(true){
               System.out.println("threadA is Run");
               Thread.yield();
//               try {
//                   Thread.sleep(0);
//               } catch (InterruptedException e) {
//                   e.printStackTrace();
//               }
           }
        });
        Thread threadB = new Thread(()->{
            while(true){
                System.out.println("threadB is Run");
            }
        });
        threadA.start();
        threadB.start();
    }
}
